ÏàÐÅ´ó¼Òͨ¹ý¶Ôǰ¼¸ÆªµÄÄÚÍøÉøÍ¸ÎÄÕµÄÔĶÁÒѾ¾ß±¸Ò»¶¨µÄÉøÍ¸¾ÑéÁË£¬ÄÇô±¾ÆÚ»Æ½ð³Ç»Æ½ð³Ç¹ÙÍøÊµÑéÊÒ½«¸ø´ó¼Ò´øÀ´¹ØÓÚÄÚÍøÉøÍ¸µÄ½ø½×¼¼ÇÉ£¬SPNÓëKerberoast¹¥»÷£¬»°²»¶à˵ֱ½Ó¿ªÊ¼¡£
01¡¢Ê²Ã´ÊÇSPN
ÏàÐÅ´ó¼Ò¿ÉÄܶÔSPNÕâ¸ö¸ÅÄîÓÐЩģºý£¬ÔÚ¿ªÊ¼Ö®Ç°ÎÒÃÇÏÈÀ´¼òµ¥Á˽âÒ»ÏÂʲôÊÇSPN£¿
SPN(ServicePrincipal Names)ÓÖÃû·þÎñÖ÷ÌåÃû³Æ£¬ÊÇ·þÎñʵÀýµÄΨһ±êʶ·û£¬ËùνµÄ·þÎñʵÀý¾ÍÀàËÆÓÚHTTP¡¢SMB¡¢MySQLµÈ·þÎñ¡£Ëµµ½Õâ¿ÉÄÜÓÐЩͬѧ»¹ÊDz»Çå³þ£¬SPN¸úÎÒÃÇÒª½²µÄKerberoast¹¥»÷µ½µ×ÓÐʲô¹ØÏµ£¬±ð¼±£¬ËûÃÇÖ®¼äȷʵ´æÔÚ¹ØÏµ¡£
˵µ½KerberosÈÏÖ¤£¬ÎÒÃÇÔÚǰ¼¸ÆÚÎÄÕÂÖÐÒ²Ïêϸ·ÖÎö¹ýÁË£¬ÊÇÄÚÍøÖг£¼ûµÄÒ»ÖÖÈÏÖ¤ÊֶΡ£KerberosÈÏÖ¤¹ý³ÌÐèҪʹÓÃSPN½«·þÎñʵÀýÓë·þÎñµÇ¼ÕË»§Ïà¹ØÁª£¬Ò²¾ÍÊÇ˵Èç¹ûÏëʹÓà Kerberos ÐÒéÀ´ÈÏÖ¤·þÎñ£¬ÄÇô±ØÐëÕýÈ·ÅäÖÃSPN¡£
SPN·ÖΪÁ½ÖÖÀàÐÍ£º
Ò»ÖÖÊÇ×¢²áÔڻĿ¼µÄ»úÆ÷ÕË»§(Computers)Ï£¬µ±Ò»¸ö·þÎñµÄȨÏÞΪ Local System »ò Network Service£¬ÔòSPN×¢²áÔÚ»úÆ÷ÕË»§(Computers)Ï¡£
Ò»ÖÖÊÇ×¢²áÔڻĿ¼µÄÓòÓû§ÕË»§(Users)Ï£¬µ±Ò»¸ö·þÎñµÄȨÏÞΪһ¸öÓòÓû§£¬ÔòSPN×¢²áÔÚÓòÓû§ÕË»§(Users)Ï¡£
02¡¢Ê²Ã´ÊÇKerberoast¹¥»÷
¼òµ¥Ö±°×µÄ˵£¬Kerberoast¹¥»÷¾ÍÊǹ¥»÷ÕßΪÁË»ñȡĿ±ê·þÎñµÄ·ÃÎÊȨÏÞ£¬¶øÉè·¨ÆÆ½âKerberos·þÎñƱ¾Ý²¢ÖØÐ´ËüÃǵĹý³Ì¡£ÕâÊǺì¶Óµ±Öзdz£³£¼ûµÄÒ»ÖÖ¹¥»÷ÊÖ·¨£¬ÒòΪËü²»ÐèÒªÓë·þÎñÄ¿±ê·þÎñ½øÐÐÈκν»»¥£¬²¢ÇÒ¿ÉÒÔʹÓúϷ¨µÄ»î¶¯Ä¿Â¼·ÃÎÊÀ´ÇëÇóºÍµ¼³ö¿ÉÒÔÀëÏßÆÆ½âµÄ·þÎñƱ¾Ý£¬ÒÔ»ñÈ¡µ½×îÖÕµÄÃ÷ÎÄÃÜÂë¡£
Ö®ËùÒÔ³öÏÖÕâÖÖÇé¿ö£¬ÊÇÒòΪ·þÎñƱ¾ÝʹÓ÷þÎñÕË»§µÄÉ¢ÁУ¨NTLM£©½øÐмÓÃÜ£¬ËùÒÔÈκÎÓòÓû§¶¼¿ÉÒÔ´Ó·þÎñת´¢É¢ÁУ¬¶øÎÞÐ轫shellÒýÈëÔËÐи÷þÎñµÄϵͳÖС£¹¥»÷Õßͨ³£»áÑ¡ÔñÄÇЩ¿ÉÄÜÉèÖÃÁËÈõÃÜÂë£¬ÆÆ½â³É¹¦ÂÊ½Ï¸ßµÄÆ±¾ÝÀ´³¢ÊÔÆÆ½â¡£Ò»µ©¹¥»÷Õ߳ɹ¦ÆÆ½â³öÁËÆ±¾Ý£¬ËûÃÇÓÐʱ²»½ö½ö»ñÈ¡µÄÖ»ÊÇ·þÎñ·ÃÎÊȨÏÞ£¬Èç¹û·þÎñ±»ÅäÖÃΪÔÚ¸ßȨÏÞÏÂÔËÐУ¬ÄÇôÕû¸öÓò¶¼½«¿ÉÄܱ»¹¥»÷ÕßÄÃÏ¡£
Ò»°ãÀ´ËµKerberoast¹¥»÷Éæ¼°ÒÔϼ¸¸ö²½Ö裺
SPN·¢ÏÖ
ÇëÇó·þÎñƱ¾Ý
µ¼³ö·þÎñƱ¾Ý
ÆÆ½â·þÎñƱ¾Ý
½ÓÏÂÀ´ÎÒÃǽøÐÐÒ»´ÎÄ£ÄâʵÑ飬ÒÀ´ÎÍê³ÉÒÔÉϲ½Öè¡£
03¡¢Kerberoast¹¥»÷ʵÑé
ÍøÂç»·¾³£º
ÄÚÍøÄ¿±ê»ú£º192.168.210.102£¨Win10 ´¦ÓÚHZMCÓòÏ£©
ÄÚÍøÓò¿Ø»ú£º192.168.210.38£¨Win Server 2012£©
¹¥»÷»ú£º192.168.20.35
¿ªÊ¼¹¥»÷£º
1. SPN·¢ÏÖ
¹¥»÷ÕßÔÚÄÚÍøÄ¿±ê»úÉÏÖ´ÐÐÒÔÏÂÃüÁî¼´¿É¼ìË÷Óû§ÕË»§ºÍ·þÎñÖ®¼äµÄÓ³Éä¡£ÀûÓÃSetSPNÎļþ£¨Windows±¾µØµÄ¶þ½øÖÆÎļþ£©»¹¿ÉÒÔÌí¼Ó¡¢É¾³ýSPN×¢²á¡£
Setspn -T <ÓòÃû> -Q */*

2. ÇëÇó·þÎñƱ¾Ý
¹¥»÷ÕßÔÚÄÚÍøÄ¿±ê»úÉÏÀûÓÃPoweShell½Å±¾À´ÊµÏÖÌØ¶¨µÄSPNÇëÇó·þÎñƱ¾Ý£¬Ö´ÐÐÒÔÏÂÃüÁî¼´¿É¡£ÆäÖÐ<·þÎñÃû³Æ>Ö¸µÄÊǵÚÒ»²½ÖÐËùÁгöµÄSPN·þÎñ£¬ÀýÈçÎÒÃÇʹÓÃkadmin/changepwÀ´×÷Ϊ²âÊÔ£¬ÄÇôÎÒÃÇÔÚ×îºóÐèÒª¼ÓÉÏkadmin/changepw¼´¿É¡£
Add-Type -AssemblyName System.IdentityModel
New-ObjectSystem.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "<·þÎñÃû³Æ>"

3. µ¼³ö·þÎñƱ¾Ý
¹¥»÷ÕßÔÚÇëÇóÍê¶ÔÓ¦µÄ·þÎñƱ¾Ýºó£¬¿ÉÒÔÀûÓÃMimikatzÀ´½«Æ±¾Ý½øÐе¼³ö£¬³ýÁËMimikatzÍ⻹ÓÐһЩÆäËûµÄ¹¤¾ßÒ²¿ÉÒÔʵÏÖÕâ¸öÄ¿µÄ£¬ÀýÈçPowerShell¡¢EmpireµÈ£¬Èç¹ûÊÇҪʹÓÃMimikatzµÄ»°ÐèÒªÖ´ÐÐÒÔÏÂÃüÁî¼´¿É¡£
mimikatz # kerberos::list /export

¿ÉÒÔ¿´µ½ÎÒÃÇËùÐèÒªµÄƱ¾Ýkadmin/changepwÒѾ±»³É¹¦µ¼³ö¡£
4. ±¬ÆÆ·þÎñƱ¾Ý
½ÓÏÂÀ´¹¥»÷ÕßΪÁ˱ÜÃâ±¬ÆÆ¶¯¾²Ì«´ó»áÒýÆð·ÀÊØÈËÔ±¾¯¾õ£¬¿ÉÒÔ½«¸Õ¸Õµ¼³öµÄƱ¾Ý¸´ÖƵ½¹¥»÷»úÉÏ£¬Ö´Ðб¬ÆÆ¡£ËùÒÀÀµµÄ±¬ÆÆ½Å±¾¿ÉÒÔ²ÉÓÃÒ»¸ö¿ªÔ´µÄ½Å±¾À´ÊµÏÖ£º
https://github.com/nidem/kerberoast
Ö´Ðиýű¾Ä¿Â¼ÏµÄtgsrepcrack.pyÔÚ¹¹ÔìÒ»·ÝÓÃÀ´±¬ÆÆµÄÃÜÂë×ֵ䣬ִÐб¬ÆÆ¼´¿É¡£¿ÉÒÔ¿´µ½Èç¹û³É¹¦ÆÆ½âÁËkerberosƱ¾Ý»á°ÑÓòÕË»§µÄÃ÷ÎÄÃÜÂëÏÔʾ³öÀ´¡£
